package com.rent.house.pojo.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.List;

/**
 * 房源发布DTO
 */
@ApiModel("房源发布DTO")
@Data
public class HousePublishDTO {

    @ApiModelProperty("房源标题")
    @NotBlank(message = "房源标题不能为空")
    private String title;

    @ApiModelProperty("房源描述")
    @NotBlank(message = "房源描述不能为空")
    private String description;

    @ApiModelProperty("房源地址")
    @NotBlank(message = "房源地址不能为空")
    private String address;

    @ApiModelProperty("省份")
    @NotBlank(message = "省份不能为空")
    private String province;

    @ApiModelProperty("城市")
    @NotBlank(message = "城市不能为空")
    private String city;

    @ApiModelProperty("区县")
    @NotBlank(message = "区县不能为空")
    private String district;

    @ApiModelProperty("月租金（元）")
    @NotNull(message = "月租金不能为空")
    private BigDecimal price;

    @ApiModelProperty("房源面积（m2）")
    @NotNull(message = "房源面积不能为空")
    private BigDecimal area;

    @ApiModelProperty("户型")
    @NotBlank(message = "户型不能为空")
    private String roomType;

    @ApiModelProperty("楼层")
    @NotNull(message = "楼层不能为空")
    private Integer floor;

    @ApiModelProperty("总楼层")
    @NotNull(message = "总楼层不能为空")
    private Integer totalFloor;

    @ApiModelProperty("朝向")
    @NotBlank(message = "朝向不能为空")
    private String orientation;

    @ApiModelProperty("装修情况")
    @NotBlank(message = "装修情况不能为空")
    private String decoration;

    @ApiModelProperty("配套设施")
    private String facilities;

    @ApiModelProperty("房源图片URL列表")
    private List<String> picUrls;
}
